A common data integration problem is the need to apply data transactions that occur in a first system, at a second, perhaps totally different, system, whilst preserving the transactional semantics of the data. Oftentimes, the operations belonging to particular transactions need to be applied either entirely or partially as soon as possible after the original transaction has completed (i.e. in real-time). In some environments, messages representing a change to an original data are placed on a messaging system and/or a message queue by an application at the first system. Generally, in order to perform a similar operation at a second system (e.g. a database), custom software code must be developed to read the data from the message queue, and apply it as appropriate to the second system). Problems can occur if the second system is not known a priori, or if the transaction needs to be recovered, since there is no means to restore data from messages that have already been consumed. Certain systems would benefit from such integration, but no real-time means is currently available. This is the general area that embodiments of the invention are intended to address.